在调试 RTOS的PendSV、任务切换、Systick 这种“内部中断事件”时

🔍 溯源 ✍️ Jack | 📅 2025-11-24 | 👍 1 | 原帖↗
#知识星球 #立芯嵌入式 #来源/立芯星球 #技术/调试 #技术/RTOS #质量/普通

原帖 | Jack | 2025-11-24 21:05 | 👍1 | 阅读约1

什么是“插桩”? 怎么插桩?

在调试 RTOS的PendSV、任务切换、Systick 这种“内部中断事件”时,你会发现一个现实:

外部中断我可以用逻辑分析仪、示波器抓到电平边沿但 PendSV、任务切换、调度器延迟 这种纯软件行为,是不会自己冒一个“信号”出来给你测的。

所以怎么办?

我们必须人为地让 CPU 把“内部事件”暴露到外部世界。

这就是:
插桩(Instrumentation) = 在关键代码里插入可观测的标记

常见的标记方式就是:
翻 GPIO(最经典,最实时)

HAL_GPIO_TogglePin(GPIOx, GPIO_PIN_x); //翻转一个你可以观测的引脚

那你就能用示波器/逻辑分析仪观察:
PendSV 进来一次 → 翻转一次
进入中断 → 翻转
出中断 → 翻转
任务切换 → 翻转

一秒里发生多少次 → 频率就是事件频率
把“不可见的软件事件”,变成“可测的电信号”。

这就是插桩。


相关笔记